#ifndef THREE_LAYERS_MEMORY_POOL_HPP
#define THREE_LAYERS_MEMORY_POOL_HPP

#include "ThreadCache.h"

namespace MemoryPool
{
    class ThreeLayersMemoryPool
    {
    public:
        static void *alloc(const size_t needSize)
        {
            return ThreadCache::getInstance().alloc(needSize);
        }

        static void dealloc(void *needStart, const size_t needSize)
        {
            ThreadCache::getInstance().dealloc(needStart, needSize);
        }
    };
} // namespace MemoryPool

#endif // THREE_LAYERS_MEMORY_POOL_HPP